package org.javaforever.gatescore.vue;

import java.io.Serializable;

import org.javaforever.gatescore.core.StatementList;

public abstract class ElementUIPage implements Comparable<ElementUIPage> ,Cloneable,Serializable{
	private static final long serialVersionUID = -4383070531017914333L;
	protected String fileName;
	protected String standardName = "";
	protected long serial = 0L;
	public abstract StatementList generateStatementList() throws Exception;
	
	public int compareTo(ElementUIPage o) {
		return this.getStandardName().compareTo(o.getStandardName());
	}
	
	public StatementList generateTemplateHeaderStatementList() throws Exception{
		return null;
	}
	
	public StatementList genertateTemplateFooterStatementList()  throws Exception{
		return null;
	}

	public String getFileName() {
		return fileName;
	}

	public void setFileName(String fileName) {
		this.fileName = fileName;
	}

	public String getStandardName() {
		return standardName;
	}

	public void setStandardName(String standardName) {
		this.standardName = standardName;
	}

	public long getSerial() {
		return serial;
	}

	public void setSerial(long serial) {
		this.serial = serial;
	}
}
